package repo

import (
	"context"

	"algo-sdk-go/project/matchmaking/adapter/dal"
	"algo-sdk-go/project/matchmaking/domain/models/entity"

	"github.com/google/wire"
)

var RecommendUserRepoSet = wire.NewSet(
	dal.NewRecommendUserRepository,
	wire.Bind(new(RecommendUserRepo), new(*dal.RecommendUserDal)),
)

type RecommendUserRepo interface {
	Save(context.Context, *entity.RecommendUser) error
	Modify(context.Context, *entity.RecommendUser) error

	LoadNearestRecommendUser(ctx context.Context) (entity.RecommendUser, error)
}
